#ifndef CIRCUITCREATE_H
#define CIRCUITCREATE_H


#include <string>
#include <stdlib.h>
#include <vector>
#include <map>

#include "Node.h"

using namespace std;

/*
===============================================================================
 Name        : CircuitCreator.h
 Author      : Bram en Paul
 Version     : 0.1
 Description : OOPatronen
===============================================================================
*/

class CircuitCreator{
	private:
		vector<Node*> inputList;
		map<string, Node*> nodeNames;
		void validateExecution();

	public:
		//Constructor
		CircuitCreator(); 

		Node* newNode(string name, string type);
		void connectNode(string name, string connections[], int amountOfConnections);
		bool nodeExists(string nodeName);
		void startCircuit();

		//Destructor
		~CircuitCreator();
};


#endif
